//! Copyright 2012 Xicut Technology, Inc.
//! All rights reserved
//!
#ifndef __HostCmdDesc_h__
#define __HostCmdDesc_h__

#include "BasicTypes.h"

class cHostCmdDesc
{
public:
    static const U8 NULL_CMD       = 0;
    static const U8 POLLING        = 1;
    static const U8 POLLING_RPL    = 2;
    static const U8 SEND_SMS       = 3;
    static const U8 SEND_SMS_RPL   = 4;
    static const U8 READ_SMS       = 5;
    static const U8 READ_SMS_RPL   = 6;

    union uHostData
    {
        struct
        {
            U8  ID[4];
            U8  EventID;
            U8  StatusID;
            U16 StatusData;
        } Polling;

        struct
        {
            U8 Phone[16];
            U8 Msg[40];
        } Sms;
    };

    struct sHostCmd
    {
        U8          Cmd;
        U8          CmdData;
        U8          PhoneLen;
        U8          MsgLen;
        uHostData   mData;
    };
};

#endif // __HostCmdDesc_h__
